<!DOCTYPE html>
<html lang="" xml:lang="">
<head>

  <meta charset="utf-8" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <title>1 中文图书Bookdown模板的基本用法 | 小蓝哥的知识荒原</title>
  <meta name="description" content="从博士开始，慢慢记录所学的点点滴滴，不断完善自己的知识框架。蓝莲盛开，身心自在；活在当下，正向提升！" />
  <meta name="generator" content="bookdown 0.21 and GitBook 2.6.7" />

  <meta property="og:title" content="1 中文图书Bookdown模板的基本用法 | 小蓝哥的知识荒原" />
  <meta property="og:type" content="book" />
  
  
  <meta property="og:description" content="从博士开始，慢慢记录所学的点点滴滴，不断完善自己的知识框架。蓝莲盛开，身心自在；活在当下，正向提升！" />
  

  <meta name="twitter:card" content="summary" />
  <meta name="twitter:title" content="1 中文图书Bookdown模板的基本用法 | 小蓝哥的知识荒原" />
  
  <meta name="twitter:description" content="从博士开始，慢慢记录所学的点点滴滴，不断完善自己的知识框架。蓝莲盛开，身心自在；活在当下，正向提升！" />
  

<meta name="author" content="李详" />



  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <meta name="apple-mobile-web-app-capable" content="yes" />
  <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  
  
<link rel="prev" href="index.html"/>
<link rel="next" href="causal.html"/>
<script src="libs/header-attrs-2.6/header-attrs.js"></script>
<script src="libs/jquery-2.2.3/jquery.min.js"></script>
<link href="libs/gitbook-2.6.7/css/style.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-table.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-bookdown.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-highlight.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-search.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-fontsettings.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-clipboard.css" rel="stylesheet" />









<script type="text/x-mathjax-config">
MathJax.Hub.Config({
  jax: ["input/TeX","output/SVG"],
  extensions: ["tex2jax.js","MathMenu.js","MathZoom.js"],
  TeX: {
    extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"]
  }
});
</script>
<script type="text/javascript"
   src="../../../MathJax/MathJax.js">
</script>


<style type="text/css">
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
  { counter-reset: source-line 0; }
pre.numberSource code > span
  { position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
  { content: counter(source-line);
    position: relative; left: -1em; text-align: right; vertical-align: baseline;
    border: none; display: inline-block;
    -webkit-touch-callout: none; -webkit-user-select: none;
    -khtml-user-select: none; -moz-user-select: none;
    -ms-user-select: none; user-select: none;
    padding: 0 4px; width: 4em;
    color: #aaaaaa;
  }
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa;  padding-left: 4px; }
div.sourceCode
  {   }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code span.at { color: #7d9029; } /* Attribute */
code span.bn { color: #40a070; } /* BaseN */
code span.bu { } /* BuiltIn */
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code span.ch { color: #4070a0; } /* Char */
code span.cn { color: #880000; } /* Constant */
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
code span.dt { color: #902000; } /* DataType */
code span.dv { color: #40a070; } /* DecVal */
code span.er { color: #ff0000; font-weight: bold; } /* Error */
code span.ex { } /* Extension */
code span.fl { color: #40a070; } /* Float */
code span.fu { color: #06287e; } /* Function */
code span.im { } /* Import */
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
code span.op { color: #666666; } /* Operator */
code span.ot { color: #007020; } /* Other */
code span.pp { color: #bc7a00; } /* Preprocessor */
code span.sc { color: #4070a0; } /* SpecialChar */
code span.ss { color: #bb6688; } /* SpecialString */
code span.st { color: #4070a0; } /* String */
code span.va { color: #19177c; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
</style>

</head>

<body>



  <div class="book without-animation with-summary font-size-2 font-family-1" data-basepath=".">

    <div class="book-summary">
      <nav role="navigation">

<ul class="summary">
<li class="chapter" data-level="" data-path="index.html"><a href="index.html"><i class="fa fa-check"></i>简介</a></li>
<li class="chapter" data-level="1" data-path="usage.html"><a href="usage.html"><i class="fa fa-check"></i><b>1</b> 中文图书Bookdown模板的基本用法</a>
<ul>
<li class="chapter" data-level="1.1" data-path="usage.html"><a href="usage.html#usage-ins"><i class="fa fa-check"></i><b>1.1</b> 安装设置</a></li>
<li class="chapter" data-level="1.2" data-path="usage.html"><a href="usage.html#usage-writing"><i class="fa fa-check"></i><b>1.2</b> 编写自己的内容</a>
<ul>
<li class="chapter" data-level="1.2.1" data-path="usage.html"><a href="usage.html#usage-writing-struct"><i class="fa fa-check"></i><b>1.2.1</b> 文档结构</a></li>
<li class="chapter" data-level="1.2.2" data-path="usage.html"><a href="usage.html#usage-writing-fig"><i class="fa fa-check"></i><b>1.2.2</b> 图形自动编号</a></li>
<li class="chapter" data-level="1.2.3" data-path="usage.html"><a href="usage.html#usage-writing-tab"><i class="fa fa-check"></i><b>1.2.3</b> 表格自动编号</a></li>
<li class="chapter" data-level="1.2.4" data-path="usage.html"><a href="usage.html#usage-writing-math"><i class="fa fa-check"></i><b>1.2.4</b> 数学公式编号</a></li>
<li class="chapter" data-level="1.2.5" data-path="usage.html"><a href="usage.html#文献引用与文献列表"><i class="fa fa-check"></i><b>1.2.5</b> 文献引用与文献列表</a></li>
</ul></li>
<li class="chapter" data-level="1.3" data-path="usage.html"><a href="usage.html#usage-output"><i class="fa fa-check"></i><b>1.3</b> 转换</a>
<ul>
<li class="chapter" data-level="1.3.1" data-path="usage.html"><a href="usage.html#usage-gitbook"><i class="fa fa-check"></i><b>1.3.1</b> 转换为网页</a></li>
<li class="chapter" data-level="1.3.2" data-path="usage.html"><a href="usage.html#usage-pdfbook"><i class="fa fa-check"></i><b>1.3.2</b> 生成PDF</a></li>
<li class="chapter" data-level="1.3.3" data-path="usage.html"><a href="usage.html#usage-website"><i class="fa fa-check"></i><b>1.3.3</b> 上传到网站</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="2" data-path="causal.html"><a href="causal.html"><i class="fa fa-check"></i><b>2</b> 格兰格因果性</a>
<ul>
<li class="chapter" data-level="2.1" data-path="causal.html"><a href="causal.html#causal-intro"><i class="fa fa-check"></i><b>2.1</b> 介绍</a></li>
<li class="chapter" data-level="2.2" data-path="causal.html"><a href="causal.html#causal-def"><i class="fa fa-check"></i><b>2.2</b> 格兰格因果性的定义</a></li>
</ul></li>
<li class="chapter" data-level="" data-path="references.html"><a href="references.html"><i class="fa fa-check"></i>References</a></li>
</ul>

      </nav>
    </div>

    <div class="book-body">
      <div class="body-inner">
        <div class="book-header" role="navigation">
          <h1>
            <i class="fa fa-circle-o-notch fa-spin"></i><a href="./">小蓝哥的知识荒原</a>
          </h1>
        </div>

        <div class="page-wrapper" tabindex="-1" role="main">
          <div class="page-inner">

            <section class="normal" id="section-">
<div id="usage" class="section level1" number="1">
<h1><span class="header-section-number">1</span> 中文图书Bookdown模板的基本用法</h1>
<div id="usage-ins" class="section level2" number="1.1">
<h2><span class="header-section-number">1.1</span> 安装设置</h2>
<p>使用RStudio软件完成编辑和转换功能。
在RStudio中，安装bookdown等必要的扩展包。</p>
<p>本模板在安装之前是一个打包的zip文件，
在适当位置解压（例如，在<code>C:/myproj</code>下），
得到<code>MathJax</code>, <code>Books/Cbook</code>, <code>Books/Carticle</code>等子目录。
本模板在<code>Books/Cbook</code>中。</p>
<p>为了利用模板制作自己的中文书，
将<code>Books/Cbook</code>制作一个副本，
改成适当的子目录名，如<code>Books/Mybook</code>。</p>
<p>打开RStudio软件，
选选单“File - New Project - Existing Directory”，
选中<code>Books/Mybook</code>子目录，确定。
这样生成一本书对应的R project（项目）。</p>
<p>为了将模板内容替换成自己的内容，
可以删除文件<code>0101-usage.Rmd</code>，
然后将<code>1001-chapter01.Rmd</code>制作几份副本，
如<code>1001-chapter01.Rmd</code>, <code>2012-chapter02.Rmd</code>，
<code>3012-chapter03.Rmd</code>。
各章的次序将按照前面的数值的次序排列。
将每个<code>.Rmd</code>文件内的<code>{#chapter01}</code>, <code>{#chapter02-sec01}</code>修改能够反映章节内容的标签文本。
所有的标签都不允许重复。
参见本模板中的<code>0101-usage.Rmd</code>文件。</p>
<p>后面的§<a href="usage.html#usage-gitbook">1.3.1</a> 和§<a href="usage.html#usage-pdfbook">1.3.2</a> 给出了将当前的书转换为网页和PDF的命令，
复制粘贴这些命令到RStudio命令行可以进行转换。</p>
</div>
<div id="usage-writing" class="section level2" number="1.2">
<h2><span class="header-section-number">1.2</span> 编写自己的内容</h2>
<div id="usage-writing-struct" class="section level3" number="1.2.1">
<h3><span class="header-section-number">1.2.1</span> 文档结构</h3>
<p>除了<code>index.Rmd</code>以外，
每个<code>.Rmd</code>文件是书的一章。
每章的第一行是用一个井号（<code>#</code>）引入的章标题。
节标题用两个井号开始，
小节标题用三个井号开始。
标题后面都有大括号内以井号开头的标签，
标签仅用英文大小写字母和减号。</p>
</div>
<div id="usage-writing-fig" class="section level3" number="1.2.2">
<h3><span class="header-section-number">1.2.2</span> 图形自动编号</h3>
<p>用R代码段生成的图形，
只要具有代码段标签，
且提供代码段选项<code>fig.cap="图形的说明文字"</code>，
就可以对图形自动编号，
并且可以用如<code>\@ref(fig:label)</code>的格式引用图形。
如：</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb1-1"><a href="usage.html#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">plot</span>(<span class="dv">1</span><span class="sc">:</span><span class="dv">10</span>, <span class="at">main=</span><span class="st">&quot;程序生成的测试图形&quot;</span>)</span></code></pre></div>
<div class="figure"><span id="fig:u-w-f-ex01"></span>
<img src="0101-usage_files/figure-html/u-w-f-ex01-1.png" alt="图形说明文字" width="672" />
<p class="caption">
图1.1: 图形说明文字
</p>
</div>
<p>引用如：参见图<a href="usage.html#fig:u-w-f-ex01">1.1</a>。
引用中的<code>fig:</code>是必须的。</p>
<p>在通过LaTeX转换的PDF结果中，
这样图形是浮动的。</p>
</div>
<div id="usage-writing-tab" class="section level3" number="1.2.3">
<h3><span class="header-section-number">1.2.3</span> 表格自动编号</h3>
<p>用R代码<code>knitr::kable()</code>生成的表格，
只要具有代码段标签，
并且在<code>knitr::kable()</code>调用时加选项<code>caption="表格的说明文字"</code>，
就可以对表格自动编号，
并且可以用如<code>\@ref(tab:label)</code>的格式引用表格。
如：</p>
<div class="sourceCode" id="cb2"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb2-1"><a href="usage.html#cb2-1" aria-hidden="true" tabindex="-1"></a>d <span class="ot">&lt;-</span> <span class="fu">data.frame</span>(<span class="st">&quot;自变量&quot;</span><span class="ot">=</span><span class="dv">1</span><span class="sc">:</span><span class="dv">10</span>, <span class="st">&quot;因变量&quot;</span><span class="ot">=</span>(<span class="dv">1</span><span class="sc">:</span><span class="dv">10</span>)<span class="sc">^</span><span class="dv">2</span>)</span>
<span id="cb2-2"><a href="usage.html#cb2-2" aria-hidden="true" tabindex="-1"></a>knitr<span class="sc">::</span><span class="fu">kable</span>(d, <span class="at">caption=</span><span class="st">&quot;表格说明文字&quot;</span>)</span></code></pre></div>
<table>
<caption><span id="tab:u-w-tab-ex01">表1.1: </span>表格说明文字</caption>
<thead>
<tr class="header">
<th align="right">自变量</th>
<th align="right">因变量</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="right">1</td>
<td align="right">1</td>
</tr>
<tr class="even">
<td align="right">2</td>
<td align="right">4</td>
</tr>
<tr class="odd">
<td align="right">3</td>
<td align="right">9</td>
</tr>
<tr class="even">
<td align="right">4</td>
<td align="right">16</td>
</tr>
<tr class="odd">
<td align="right">5</td>
<td align="right">25</td>
</tr>
<tr class="even">
<td align="right">6</td>
<td align="right">36</td>
</tr>
<tr class="odd">
<td align="right">7</td>
<td align="right">49</td>
</tr>
<tr class="even">
<td align="right">8</td>
<td align="right">64</td>
</tr>
<tr class="odd">
<td align="right">9</td>
<td align="right">81</td>
</tr>
<tr class="even">
<td align="right">10</td>
<td align="right">100</td>
</tr>
</tbody>
</table>
<p>引用如：参见表<a href="usage.html#tab:u-w-tab-ex01">1.1</a>。
引用中的<code>tab:</code>是必须的。</p>
<p>在通过LaTeX转换的PDF结果中，
这样的表格是浮动的。</p>
</div>
<div id="usage-writing-math" class="section level3" number="1.2.4">
<h3><span class="header-section-number">1.2.4</span> 数学公式编号</h3>
<p>不需要编号的公式，
仍可以按照一般的Rmd文件中公式的做法。
需要编号的公式，
直接写在<code>\begin{align}</code>和<code>\end{align}</code>之间，
不需要编号的行在末尾用<code>\nonumber</code>标注。
需要编号的行用<code>(\#eq:mylabel)</code>添加自定义标签，
如</p>
<p><span class="math display" id="eq:var-mat-def">\[\begin{align}
\Sigma =&amp;  (\sigma_{ij})_{n\times n} \nonumber \\
=&amp; E[(\boldsymbol{X} - \boldsymbol{\mu}) (\boldsymbol{X} - \boldsymbol{\mu})^T ] 
\tag{1.1}
\end{align}\]</span></p>
<p>引用如：协方差定义见<a href="usage.html#eq:var-mat-def">(1.1)</a>。</p>
</div>
<div id="文献引用与文献列表" class="section level3" number="1.2.5">
<h3><span class="header-section-number">1.2.5</span> 文献引用与文献列表</h3>
<p>将所有文献用bib格式保存为一个<code>.bib</code>文献库，
如模板中的样例文件<code>mybib.bib</code>。
可以用JabRef软件来管理这样的文献库，
许多其它软件都可以输出这样格式的文件库。</p>
<p>为了引用某一本书，
用如：参见<span class="citation">(<a href="references.html#ref-Wichmann1982:RNG" role="doc-biblioref">Wichmann and Hill 1982</a>)</span>。</p>
<p>被引用的文献将出现在一章末尾以及全书的末尾，
对PDF输出则仅出现在全书末尾。</p>
</div>
</div>
<div id="usage-output" class="section level2" number="1.3">
<h2><span class="header-section-number">1.3</span> 转换</h2>
<div id="usage-gitbook" class="section level3" number="1.3.1">
<h3><span class="header-section-number">1.3.1</span> 转换为网页</h3>
<p>用如下命令将整本书转换成一个每章为一个页面的网站，
称为gitbook格式：</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb3-1"><a href="usage.html#cb3-1" aria-hidden="true" tabindex="-1"></a>bookdown<span class="sc">::</span><span class="fu">render_book</span>(<span class="st">&quot;index.Rmd&quot;</span>, </span>
<span id="cb3-2"><a href="usage.html#cb3-2" aria-hidden="true" tabindex="-1"></a>  <span class="at">output_format=</span><span class="st">&quot;bookdown::gitbook&quot;</span>, <span class="at">encoding=</span><span class="st">&quot;UTF-8&quot;</span>)</span></code></pre></div>
<p>为查看结果，
在<code>_book</code>子目录中双击其中的<code>index.html</code>文件，
就可以在网络浏览器中查看转换的结果。
重新编译后应该点击“刷新”图标。</p>
<p>在章节和内容较多时，
通常不希望每次小修改之后重新编译整本书，
这时类似如下的命令可以仅编译一章，
可以节省时间，
缺点是导航目录会变得不准确。
命令如：</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb4-1"><a href="usage.html#cb4-1" aria-hidden="true" tabindex="-1"></a>bookdown<span class="sc">::</span><span class="fu">preview_chapter</span>(<span class="st">&quot;1001-chapter01.Rmd&quot;</span>,</span>
<span id="cb4-2"><a href="usage.html#cb4-2" aria-hidden="true" tabindex="-1"></a>  <span class="at">output_format=</span><span class="st">&quot;bookdown::gitbook&quot;</span>, <span class="at">encoding=</span><span class="st">&quot;UTF-8&quot;</span>)</span></code></pre></div>
<p>单章的网页可以通过网络浏览器中的“打印”功能，
选择一个打印到PDF的打印机，
可以将单章转换成PDF格式。</p>
</div>
<div id="usage-pdfbook" class="section level3" number="1.3.2">
<h3><span class="header-section-number">1.3.2</span> 生成PDF</h3>
<p>如果想将R Markdown文件借助于LaTeX格式转换为PDF，
需要在系统中安装一个TeX编译器。
现在的rmarkdown包要求使用tinytex扩展包以及配套的<a href="https://yihui.name/tinytex/">TinyTeX软件包</a>，
好像不再支持使用本机原有的LaTex编译系统，
如果不安装tinytex，编译为PDF格式时会出错。
TinyTeX优点是直接用R命令就可以安装，
更新也由R自动进行，不需要用户干预。
但是，安装时需要从国外网站下载许多文件，
有因为网络不畅通而安装失败的危险。</p>
<p>为了安装R的tinytex扩展包和单独的TinyTeX编译软件，应运行：</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb5-1"><a href="usage.html#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">install.packages</span>(<span class="st">&#39;tinytex&#39;</span>)</span>
<span id="cb5-2"><a href="usage.html#cb5-2" aria-hidden="true" tabindex="-1"></a>tinytex<span class="sc">::</span><span class="fu">install_tinytex</span>()</span></code></pre></div>
<p>安装过程需要从国外的服务器下载许多文件，
在国内的网络环境下有可能因为网络超时而失败。
如果安装成功，
TinyTeX软件包在MS Windows系统中一般会安装在 <code>C:\Users\用户名\AppData\Roaming\MikTex</code>目录中，
其中“用户名”应替换成系统当前用户名。
如果需要删除TinyTeX软件包， 只要直接删除那个子目录就可以。</p>
<p>为了判断TinyTeX是否安装成功， 在RStudio中运行</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb6-1"><a href="usage.html#cb6-1" aria-hidden="true" tabindex="-1"></a>tinytex<span class="sc">::</span><span class="fu">is_tinytex</span>()</span></code></pre></div>
<p>结果应为TRUE, 出错或者结果为FALSE都说明安装不成功。
在编译<code>pdf_book</code>时，可能会需要联网下载LaTeX所需的格式文件。</p>
<p>Bookdown借助操作系统中安装的LaTeX编译软件TinyTeX将整本书转换成一个PDF文件，
这需要用户对LaTeX有一定的了解，
否则一旦出错，
就完全不知道如何解决。
用户如果需要进行LaTeX定制，
可修改模板中的<code>preamble.tex</code>文件。</p>
<p>转换为PDF的命令如下：</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb7-1"><a href="usage.html#cb7-1" aria-hidden="true" tabindex="-1"></a>bookdown<span class="sc">::</span><span class="fu">render_book</span>(<span class="st">&quot;index.Rmd&quot;</span>, </span>
<span id="cb7-2"><a href="usage.html#cb7-2" aria-hidden="true" tabindex="-1"></a>  <span class="at">output_format=</span><span class="st">&quot;bookdown::pdf_book&quot;</span>, <span class="at">encoding=</span><span class="st">&quot;UTF-8&quot;</span>)</span></code></pre></div>
<p>在<code>_book</code>子目录中找到<code>CBook.pdf</code>文件，
这是转换的结果。
CBook.tex是作为中间结果的LaTeX文件，
如果出错可以从这里查找错误原因。</p>
<p>转换PDF对于内容多的书比较耗时，
不要过于频繁地转换PDF，
在修改书的内容时，
多用<code>bookdown::preview_chapter</code>和转换为gitbook的办法检验结果。
定期地进行转换PDF的测试。
每增加一章后都应该试着转换成PDF看有没有错误。
命令如：</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb8-1"><a href="usage.html#cb8-1" aria-hidden="true" tabindex="-1"></a>bookdown<span class="sc">::</span><span class="fu">preview_chapter</span>(<span class="st">&quot;1001-chapter01.Rmd&quot;</span>, </span>
<span id="cb8-2"><a href="usage.html#cb8-2" aria-hidden="true" tabindex="-1"></a>  <span class="at">output_format=</span><span class="st">&quot;bookdown::gitbook&quot;</span>, <span class="at">encoding=</span><span class="st">&quot;UTF-8&quot;</span>)</span></code></pre></div>
</div>
<div id="usage-website" class="section level3" number="1.3.3">
<h3><span class="header-section-number">1.3.3</span> 上传到网站</h3>
<p>如果书里面没有数学公式，
则上传到网站就只要将<code>_book</code>子目录整个地用ftp软件传送到自己的网站主目录下的某个子目录即可。
但是，为了支持数学公式，就需要进行如下的目录结构设置：</p>
<ol style="list-style-type: decimal">
<li>设自己的网站服务器目录为<code>/home/abc</code>，
将MathJax目录上传到这个目录中。</li>
<li>在<code>/home/abc</code>中建立新目录<code>Books/Mybook</code>。</li>
<li>将<code>_book</code>子目录上传到<code>/home/abc/Books/Mybook</code>中。</li>
<li>这时网站链接可能类似于<code>http://dept.univ.edu.cn/~abc/Books/Mybooks/_book/index.html</code>,
具体链接地址依赖于服务器名称与主页所在的主目录名称。</li>
</ol>
<p>如果有多本书，
<code>MathJax</code>仅需要上传一次。
因为<code>MathJax</code>有三万多个文件，
所以上传<code>MathJax</code>会花费很长时间。</p>

</div>
</div>
</div>
            </section>

          </div>
        </div>
      </div>
<a href="index.html" class="navigation navigation-prev " aria-label="Previous page"><i class="fa fa-angle-left"></i></a>
<a href="causal.html" class="navigation navigation-next " aria-label="Next page"><i class="fa fa-angle-right"></i></a>
    </div>
  </div>
<script src="libs/gitbook-2.6.7/js/app.min.js"></script>
<script src="libs/gitbook-2.6.7/js/lunr.js"></script>
<script src="libs/gitbook-2.6.7/js/clipboard.min.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-search.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-sharing.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-fontsettings.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-bookdown.js"></script>
<script src="libs/gitbook-2.6.7/js/jquery.highlight.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-clipboard.js"></script>
<script>
gitbook.require(["gitbook"], function(gitbook) {
gitbook.start({
"sharing": {
"github": false,
"facebook": true,
"twitter": true,
"linkedin": false,
"weibo": false,
"instapaper": false,
"vk": false,
"all": ["facebook", "twitter", "linkedin", "weibo", "instapaper"]
},
"fontsettings": {
"theme": "white",
"family": "sans",
"size": 2
},
"edit": {
"link": null,
"text": null
},
"history": {
"link": null,
"text": null
},
"view": {
"link": null,
"text": null
},
"download": ["CBook.pdf"],
"toc": {
"collapse": "subsection"
}
});
});
</script>

<!-- dynamically load mathjax for compatibility with self-contained -->
<script>
  (function () {
    var script = document.createElement("script");
    script.type = "text/javascript";
    var src = "true";
    if (src === "" || src === "true") src = "https://mathjax.rstudio.com/latest/MathJax.js?config=TeX-MML-AM_CHTML";
    if (location.protocol !== "file:")
      if (/^https?:/.test(src))
        src = src.replace(/^https?:/, '');
    script.src = src;
    document.getElementsByTagName("head")[0].appendChild(script);
  })();
</script>
</body>

</html>
